package com.pe.pgn.clubpgn.service.impl;

import java.util.List;
import java.util.Map;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.pe.pgn.clubpgn.dao.AlmacenDao;
import com.pe.pgn.clubpgn.domain.ClpbAlmacen;
import com.pe.pgn.clubpgn.service.AlmacenService;

@Service("almacenService")
public class AlmacenServiceImpl extends GenericManagerImpl<ClpbAlmacen, Long> implements
		AlmacenService {

	@Autowired
	private AlmacenDao almacenDao;

	
	public List<Map<String, Object>> buscarAlmacenes(String deAlmacen,
			String coCodigoAlmacen, Long coEstacion, String stAlmacen,
			String stTipoAlmacen) {
		
		return almacenDao.buscarAlmacenes(deAlmacen, coCodigoAlmacen, coEstacion, stAlmacen, stTipoAlmacen);
	}

	
	public void eliminarAlmacen(Long id) {
		
		almacenDao.eliminarAlmacen(id);
	}

	
	public boolean esAlmacenConDependencias(Long id) {
		
		return almacenDao.esAlmacenConDependencias(id);
	}

	
	public void guardarAlmacen(ClpbAlmacen almacen) {
		
		almacenDao.guardarAlmacen(almacen);
	}

	
	public ClpbAlmacen obtenerAlmacen(Long id) {
		
		return almacenDao.obtenerAlmacen(id);
	}

	
	public List<ClpbAlmacen> obtenerAlmacenes(boolean esInicial) {
		
		return almacenDao.obtenerAlmacenes(esInicial);
	}


	public boolean existeAlmacenPrincipal(Long id) {
		
		return almacenDao.existeAlmacenPrincipal(id);
	}


	public boolean existeAlmacenVirtual(Long id) {
		
		return almacenDao.existeAlmacenVirtual(id);
	}


	public ClpbAlmacen obtenerAlmacenPrincipal() {
		
		return almacenDao.obtenerAlmacenPrincipal();
	}


	public ClpbAlmacen obtenerAlmacenVirtual() {
		
		return almacenDao.obtenerAlmacenVirtual();
	}


	public boolean esEstacionUsada(Long coEstacion, Long id) {
		return almacenDao.esEstacionUsada(coEstacion, id);
	}

}
